import type * as T from './type'
import http from '@/utils/http'

export type * from './type'

/**
 * 部门列表
 * @param query
 */
export function listDept(query: T.DeptQuery) {
  return http.post<T.DeptResp[]>(`/system/dept/list`, query)
}

/**
 * 部门分页
 * @param query
 */
export function pageDept(query: T.DeptQuery) {
  return http.post<PageRes<T.DeptResp[]>>(`/system/dept/page`, query)
}

/**
 * 部门树
 * @param query
 */
export function treeDept(query: T.DeptQuery) {
  return http.post<T.DeptResp[]>(`/system/dept/tree`, query)
}

/**
 * 部门详情
 * @param id
 */
export function getDept(id: string) {
  return http.get<T.DeptResp>(`/system/dept/detail/${id}`)
}

/**
 * 新增部门
 * @param data
 */
export function addDept(data: any) {
  return http.post<boolean>(`/system/dept/create`, data)
}

/**
 * 修改部门
 * @param id
 * @param data
 */
export function updateDept(id: string, data: any) {
  return http.put(`/system/dept/update/${id}`, data)
}

/**
 * 删除部门
 * @param id
 */
export function deleteDept(id: string) {
  return http.del(`/system/dept/delete/${id}`)
}
